
/* start /web-platform/scripts/web-platform/component/media-modal.js*/
window.SOE=window.SOE||{};window.SOE.MediaModal=(function(){'use strict';var YOUTUBE_FAILURE_RETRY_COUNT=3;var _numDots=5;var _dotBarAutosizeSettings=null;var _numVideoThumbs=6;var _didInit=false;var _youTubeInitStarted=false;var _youTubeInitFinished=false;var _downloadListFunc=null;var _filterFunc=null;var _originalUrl=null;var _imageInfo=null;var _youTubeVideos=null;function _updateDotPos(idx){var $allDots=$('#dotOverflowContainer .dot');var $visibleDots=$allDots.filter(':not(.filtered)');var pageIdx=Math.floor($visibleDots.index($allDots.eq(idx))/_numDots);$allDots.removeClass('active').eq(idx).addClass('active');$('#dotOverflowContainer').stop().animate({left:pageIdx* -$('#paginationDotContainer').width()},function(){$('.modalControl').removeClass('disabled');});_updateDownloadList(idx);_updatePermalink(idx);}
function _updateDownloadList(dotIdx){if(_downloadListFunc){_downloadListFunc(_imageInfo[dotIdx].userId,$('#mediaModalDownload ul').empty());}}
function _updatePermalink(dotIdx){if(_originalUrl&&window.history.replaceState){window.history.replaceState(null,document.title,_imageInfo[dotIdx].permalinkUrl);}}
function _autosizeDotBar(){if(_dotBarAutosizeSettings){var windowWidth=window.innerWidth||document.documentElement.clientWidth;var totalDots=parseInt($('#mediaModalHeader .mediaTotal').text(),10);var widestPossibleContainer=Math.floor((windowWidth*_dotBarAutosizeSettings.maxWidth)/_dotBarAutosizeSettings.dotWidth)*_dotBarAutosizeSettings.dotWidth;var allDotsWidth=totalDots*_dotBarAutosizeSettings.dotWidth;var finalDotBarWidth=Math.min(widestPossibleContainer,allDotsWidth);var visibleDots=(finalDotBarWidth/_dotBarAutosizeSettings.dotWidth);var allDotsVisible=(visibleDots>=totalDots);$('#media-modal .pagNavBtn').toggleClass('hidden',allDotsVisible);$('#paginationDotContainer').width(finalDotBarWidth);setDotCount(visibleDots);}}
function _init(){if(_didInit){return;}
_didInit=true;$('#media-modal').on('soe.updateDot',function(evt,dot){var $allDots=$('#dotOverflowContainer .dot');var $visibleDots=$allDots.filter(':not(.filtered)');$('#media-modal-image').attr('src',_imageInfo[dot].imageUrl);$('#mediaModalHeader .mediaNum').text($visibleDots.index($allDots.eq(dot))+1);_updateDotPos(dot);});$('#media-modal').on('soe.arrowClick',function(evt,dir){var $allDots=$('#dotOverflowContainer .dot');var $visibleDots=$allDots.filter(':not(.filtered)');var selectedVisibleDot=$visibleDots.index($allDots.filter('.active'))+1;var selectedDot;if(dir==='next'){if(selectedVisibleDot<$visibleDots.length){selectedVisibleDot++;}else{selectedVisibleDot=1;}}else if(selectedVisibleDot>1){selectedVisibleDot--;}else{selectedVisibleDot=$visibleDots.length;}
selectedDot=$allDots.index($visibleDots.eq(selectedVisibleDot-1));$('#media-modal-image').attr('src',_imageInfo[selectedDot].imageUrl);$('#mediaModalHeader .mediaNum').text(selectedVisibleDot);_updateDotPos(selectedDot);});$('#media-modal').on('click','.pagDot',function(){var idx=$('#dotOverflowContainer .pagDot').index(this);$('#media-modal').trigger('soe.updateDot',idx);});$('#media-modal').keydown(function(key){if(key.which===37){$('#media-modal').trigger('soe.arrowClick','prev');}else if(key.which===39){$('#media-modal').trigger('soe.arrowClick','next');}});$('.modalTraverse').on('click',function(){$('#media-modal').trigger('soe.arrowClick',this.getAttribute('rel'));});$('#media-modal').on('mouseenter','.pagDot',function(){var $this=$(this);var idx=$('#dotOverflowContainer .pagDot').index($this);var dotWidth=parseInt($this.outerWidth(true),10)/2;var dotLeft=$this.offset().left;var tooltip=$('#paginationImages');if(!tooltip.hasClass('hidden')){var tooltipWidth=parseInt(tooltip.outerWidth(),10)/2;tooltip.stop().animate({left:(dotLeft+dotWidth)-tooltipWidth},'fast');$('#paginationImgSlider').stop().animate({left:idx* -parseInt(tooltip.width(),10)},'fast');tooltip.show();}});$('#media-modal').on('mouseleave','.pagDot',function(){$('#paginationImages').hide();});$('.pagNavBtn').on('click',function(){var dotContainer=$('#dotOverflowContainer');var pageContainer=$('#paginationDotContainer');var pageWidth=pageContainer.width();var pages=Math.ceil(dotContainer.find('.dot:not(.filtered)').length/_numDots);var nextShift;var maxContainerShift=((pages-1)* -pageWidth);if(this.getAttribute('rel')==='next'){nextShift=parseInt(dotContainer.css('left'),10)-pageWidth;if(nextShift<maxContainerShift){dotContainer.stop().animate({left:0});}else{dotContainer.stop().animate({left:nextShift});}}else{nextShift=parseInt(dotContainer.css('left'),10)+pageWidth;if(nextShift>0){dotContainer.stop().animate({left:maxContainerShift});}else{dotContainer.stop().animate({left:nextShift});}}});$('#mediaModalFilter').on('click','.dropdown-menu a',function(e){e.preventDefault();if(_filterFunc){var $allDots,$visibleDots;var filterId=this.getAttribute('data-filter-id');$('#dotOverflowContainer .dot').each(function(dotIdx){$(this).toggleClass('filtered',!_filterFunc(_imageInfo[dotIdx].userId,filterId));});$allDots=$('#dotOverflowContainer .dot');$visibleDots=$allDots.filter(':not(.filtered)');$('#mediaModalHeader .mediaTotal').text($visibleDots.length);_autosizeDotBar();$('#media-modal').trigger('soe.updateDot',$allDots.index($visibleDots.eq(0)));}});$(document).on('hide.bs.modal','#media-modal.image-content',function(){if(_originalUrl&&window.history.replaceState){window.history.replaceState(null,document.title,_originalUrl);}
$(window).off('.mediaModal');_downloadListFunc=null;_filterFunc=null;_originalUrl=null;_imageInfo=null;});}
function _initYouTube(readyFn){var youTubePlayer;if(_youTubeInitFinished){if(readyFn){readyFn();}
return;}
if(readyFn){$(document).on('onYouTubeIframeAPIReady',function(){readyFn();});}
if(_youTubeInitStarted){return;}
_youTubeInitStarted=true;$(document).on('show.bs.modal','#media-modal.video-content',function(){if($('#media-modal .modal-video-playlist ul').is(':empty')){youTubePlayer=new YT.Player($('#media-modal .modal-video-replace').get(0),{width:'100%',height:'100%',host:'https://www.youtube-nocookie.com',playerVars:{autoplay:1,theme:'dark',color:'black',rel:0,wmode:'opaque'},videoId:$(this).data('youtube-video-id'),events:{onReady:videoReady,onStateChange:videoStateChange,onError:videoError}});}else{startPlaylist();}});function videoReady(e){$(document).trigger('onYouTubeReady',e);}
function videoStateChange(e){$(document).trigger('onYouTubeStateChange',e);}
function videoError(e){$(document).trigger('onYouTubeError',e);}
function startPlaylist(){youTubePlayer=new YT.Player($('#media-modal .modal-video-replace').get(0),{host:'https://www.youtube-nocookie.com',playerVars:{autoplay:1,theme:'dark',color:'black',rel:0,wmode:'opaque'},events:{onReady:playlistReady,onStateChange:playlistStateChange,onError:playlistError}});}
function playlistReady(e){var playlist=_.pluck(_youTubeVideos,'id');var startVideo=$('#media-modal.video-content').data('youtube-video-id');$('#media-modal .modal-video-playlist').data('youtube-fail-count',0);youTubePlayer.loadPlaylist(playlist.join(','),playlist.indexOf(startVideo));$(document).trigger('onYouTubeReady',e);}
function playlistStateChange(e){var currentVideoIndex;if(e.data===YT.PlayerState.PLAYING){currentVideoIndex=youTubePlayer.getPlaylistIndex();$('#media-modal .modal-video-playlist a').removeClass('now-playing').eq(currentVideoIndex).addClass('now-playing');$('#media-modal .modal-video-details .title').text(_youTubeVideos[currentVideoIndex].title);$('#media-modal .modal-video-details .username').attr('href','https://www.youtube.com/channel/'+_youTubeVideos[currentVideoIndex].channelId).text(_youTubeVideos[currentVideoIndex].username);$('#media-modal .modal-video-details .date').text(_youTubeVideos[currentVideoIndex].timestamp.toDateString());showPlaylistPage(Math.floor(currentVideoIndex/_numVideoThumbs));}
$(document).trigger('onYouTubeStateChange',e);}
function playlistError(e){var failureCount;if(e.data===5){failureCount=$('#media-modal .modal-video-playlist').data('youtube-fail-count');if(failureCount<YOUTUBE_FAILURE_RETRY_COUNT){youTubePlayer.stopVideo();$('#media-modal .modal-video-replace').after('<div class="modal-video-replace"></div>').remove();$('#media-modal .modal-video-playlist').data('youtube-fail-count',failureCount+1);$('#media-modal').data('youtube-video-id',_youTubeVideos[youTubePlayer.getPlaylistIndex()].id);startPlaylist();}}
$(document).trigger('onYouTubeError',e);}
function showPlaylistPage(page){$('#media-modal .modal-video-playlist ul').data('page',page).css('margin-left',(page* -100)+'%');}
function getPlaylistPage(){return $('#media-modal .modal-video-playlist ul').data('page');}
$(document).on('hide.bs.modal','#media-modal.video-content',function(){try{youTubePlayer.stopVideo();}catch(e){}
$('#media-modal .modal-video').empty();_youTubeVideos=null;});$(document).on('click','#media-modal.video-content .modal-video-playlist a',function(){var selectedIndex=$('#media-modal .modal-video-playlist a').index(this);youTubePlayer.playVideoAt(selectedIndex);});$(document).on('click','#media-modal.video-content .playlist-pag-prev, #media-modal.video-content .playlist-pag-next',function(){var newPage,currentPage=getPlaylistPage(),firstPage=0,lastPage=(Math.ceil(_youTubeVideos.length/_numVideoThumbs)-1);if($(this).hasClass('playlist-pag-prev')){newPage=currentPage<=firstPage?lastPage:(currentPage-1);}else{newPage=currentPage>=lastPage?firstPage:(currentPage+1);}
showPlaylistPage(newPage);});window.onYouTubeIframeAPIReady=function(e){_youTubeInitFinished=true;$(document).trigger('onYouTubeIframeAPIReady',e);};}
function setDotCount(numDots){if(numDots>0){_numDots=numDots;}}
function setAutosizeDotBar(options){if(options){var defaults={maxWidth:0.7,dotWidth:1};_dotBarAutosizeSettings=$.extend({},defaults,options);}else{_dotBarAutosizeSettings=null;}}
function setupGroup(options){var defaults={container:null,selector:'a',hidePaginationThumbs:false,permalinkAttribute:null,userIdAttribute:null};var _options=$.extend({},defaults,options);_init();$(_options.container).on('click',_options.selector,function(e){var i,imageInfo=[];var localOptions=$.extend({},_options);var $allItems=$(localOptions.container).find(localOptions.selector);for(i=0;i<$allItems.length;++i){imageInfo.push({imageUrl:$allItems[i].getAttribute('href'),thumbUrl:localOptions.hidePaginationThumbs?null:$allItems.eq(i).find('img').attr('src'),userId:localOptions.userIdAttribute?$allItems[i].getAttribute(localOptions.userIdAttribute):null,permalinkUrl:localOptions.permalinkAttribute?$allItems[i].getAttribute(localOptions.permalinkAttribute):null});}
localOptions.hasPermalinks=Boolean(localOptions.permalinkAttribute);localOptions.hasThumbs=!localOptions.hidePaginationThumbs;localOptions.imageInfo=imageInfo;localOptions.initialItem=$allItems.index(this);showGroup(localOptions);e.preventDefault();});}
function showGroup(options){var defaults={typeName:null,containY:false,centerY:false,hasThumbs:false,hasPermalinks:false,downloadListFunc:null,filterList:null,filterFunc:null,initialItem:0,imageInfo:[]};var i,dotContainerWidth,dotMarkup='',paginationMarkup='';var _options=$.extend({},defaults,options);var dotTemplate=$('#tpl-pagination-dot').html();var filterTemplate=_.template($('#tpl-media-filter-list-item').html());var hasDownloads=(typeof _options.downloadListFunc==='function');var hasFilters=Boolean((_options.filterList&&options.filterList.length>0&&typeof _options.filterFunc==='function'));_init();_imageInfo=_options.imageInfo;$('#mediaModalHeader .mediaType').text(_options.typeName);$('#mediaModalHeader .mediaNum').text(_options.initialItem+1);$('#mediaModalHeader .mediaTotal').text(_options.imageInfo.length);$('#media-modal-image').attr('src',_options.imageInfo[_options.initialItem].imageUrl);$('#mediaModalDownload').toggleClass('hidden',!hasDownloads);$('#mediaModalFilter').toggleClass('hidden',!hasFilters);$('#dotOverflowContainer').empty().width(9999999);$('#paginationImgSlider').empty();$('#paginationImages').toggleClass('hidden',!_options.hasThumbs);for(i=0;i<_options.imageInfo.length;++i){dotMarkup+=dotTemplate;if(_options.hasThumbs){paginationMarkup+='<img src="'+_options.imageInfo[i].thumbUrl+'"/>';}}
$('#dotOverflowContainer').append($(dotMarkup));$('#paginationImgSlider').width(9999999).append($(paginationMarkup));$('#dotOverflowContainer .dot').eq(_options.initialItem).addClass('active');if(_options.hasPermalinks){_originalUrl=window.location.href;_updatePermalink(_options.initialItem);}
if(hasDownloads){_downloadListFunc=_options.downloadListFunc;_updateDownloadList(_options.initialItem);}
if(hasFilters){_filterFunc=_options.filterFunc;$('#mediaModalFilter ul').empty();for(i=0;i<_options.filterList.length;++i){$('#mediaModalFilter ul').append($(filterTemplate({filterId:_options.filterList[i].id,filterTitle:_options.filterList[i].title})));}}
if(_dotBarAutosizeSettings){$(window).on('resize.mediaModal',_autosizeDotBar);_autosizeDotBar();}
dotContainerWidth=$('#paginationDotContainer').width();$('#dotOverflowContainer').css('left',(Math.ceil((_options.initialItem+1)/_numDots)-1)* -dotContainerWidth);$('#media-modal').removeClass().addClass('modal fade image-content');$('#media-modal').toggleClass('contain-y',_options.containY);$('#media-modal').toggleClass('center-y',_options.centerY);$('#media-modal').modal();}
function setupPoster(options){var defaults={container:null,selector:'a'};var _options=$.extend({},defaults,options);_init();$(_options.container).on('click',_options.selector,function(event){showPoster($.extend({},_options,{url:this.getAttribute('href')}));event.preventDefault();});}
function showPoster(options){var defaults={scroll:true,containY:false};var _options=$.extend({},defaults,options);_init();$('#media-modal-image').attr('src',_options.url);$('#media-modal').removeClass().addClass('modal fade image-content');$('#media-modal').toggleClass('full-scroll',_options.scroll);$('#media-modal').toggleClass('full-fixed',!_options.scroll);$('#media-modal').toggleClass('contain-y',_options.containY);$('#media-modal').modal();}
function setTrayThumbCount(thumbsPerPage){if(thumbsPerPage>0){_numVideoThumbs=thumbsPerPage;}}
function findYouTubeId(url){var idSniff=/(?:youtube\.com\/(?:[^/]+\/.+\/|(?:v|e(?:mbed)?)\/|.*[?&]v=)|youtu\.be\/)([^"&?/ ]{11})/i;var matches=url.match(idSniff);if(matches&&matches.length>=2){return matches[1];}else{return null;}}
function setupYouTube(options){if(!globs.wdl.wdlCookDNT){_initYouTube(function(){var defaults={linkSelector:null,defaultVideoID:null};var _options=$.extend({},defaults,options);$(document).on('click',_options.linkSelector,function(event){var videoID;if($(window).width()>=768){event.preventDefault();videoID=findYouTubeId(this.getAttribute('href'))||_options.defaultVideoID;showYouTube({videoId:videoID});}});});}}
function showYouTube(options){if(!globs.wdl.wdlCookDNT){_initYouTube(function(){var defaults={videoId:null,videos:null};var i,playlistTemplate,playlistContents;var _options=$.extend({},defaults,options);var $modal=$('#media-modal');$modal.data('youtube-video-id',_options.videoId);$modal.find('.modal-video').html($('#tpl-youtube-video-default-markup').html());if(_options.videos&&_options.videos.length>0){playlistTemplate=_.template($('#tpl-youtube-playlist-item').html());playlistContents='';for(i=0;i<_options.videos.length;++i){playlistContents+=playlistTemplate(_options.videos[i]);}
_youTubeVideos=_options.videos;$modal.find('.modal-video-playlist ul').html(playlistContents).data('page',0);$modal.find('.modal-video-playlist .playlist-count').text(_options.videos.length);$modal.removeClass().addClass('modal fade video-content playlist');$modal.modal();}else{$modal.removeClass().addClass('modal fade video-content');$modal.modal();}});}}
function isReady(){return _youTubeInitFinished;}
return{setDotCount:setDotCount,setAutosizeDotBar:setAutosizeDotBar,setupGroup:setupGroup,showGroup:showGroup,setTrayThumbCount:setTrayThumbCount,setupYouTube:setupYouTube,showYouTube:showYouTube,setupPoster:setupPoster,showPoster:showPoster,findYouTubeId:findYouTubeId,isReady:isReady};}());

/* end /web-platform/scripts/web-platform/component/media-modal.js*/

/* start /web-platform/scripts/web-platform/shop.core.js*/
SOE.Shop=function(config){this.config=config;this.config.sort=this.config.sort||'origPrice';this.products=[];if(!this.config.ajaxUrl){throw'Make sure `ajaxUrl` is set to a valid URAM URL when you instantiate the page.';}else if(!this.config.container){throw'Make sure `container` is set to a valid ID, or array of IDs when you instantiate the page.';}else if(!this.config.template){throw'Make sure `template` is set to a valid ID, array of IDs, or Underscore template function when you instantiate the page.';}};SOE.Shop.prototype.init=function(){SOE.Shop.currency=wpCookie('shop-currency')||'USD';this.symbolMap={USD:{symbol:'\u0024',method:'currencyFront'},AUD:{symbol:'A\u0024',method:'currencyFront'},DKK:{symbol:'kr',method:'currencyBack'},EUR:{symbol:'\u20AC',method:'currencyFront'},GBP:{symbol:'\u00A3',method:'currencyFront'},NOK:{symbol:'kr',method:'currencyBack'},SEK:{symbol:'kr',method:'currencyBack'},CHF:{symbol:'Fr',method:'currencyBack'},JPY:{symbol:'\u00A5',method:'currencyFront'},BRL:{symbol:'R\u0024',method:'currencyFront'},SOE:{symbol:'',method:'currencyFront'}};if($('.currency.dropdown').length){this.setCurrency();}
this.loadUramData();};SOE.Shop.prototype.getUramData=function(){$.ajax({url:globs.urls.uramAjaxUrl+this.config.ajaxUrl+SOE.Shop.currency,dataType:'json',context:this,success:function(uramData){this.formatUramData(uramData[this.config.objName]);}});};SOE.Shop.prototype.shopAjax=function(url){var _this=this;return $.ajax({url:url,dataType:'json',context:_this}).done(function(result,signature){return(signature==='success')?result:{error:'shop request failed'};})};SOE.Shop.prototype.loadUramData=function(){var _this=this;var result=0;var signature=1;var requests=[];if(SOE.Shop.currency!=='USD'){requests=[_this.shopAjax(globs.urls.uramAjaxUrl+_this.config.ajaxUrl.replace(/locale=[a-zA-Z_]{5}/,'locale=en_US')+'USD'),_this.shopAjax(globs.urls.uramAjaxUrl+_this.config.ajaxUrl+SOE.Shop.currency)];}else{requests=[_this.shopAjax(globs.urls.uramAjaxUrl+_this.config.ajaxUrl+SOE.Shop.currency)];}
$.when.apply($,requests).then(function(usdReq,usersCurrencyReq){if(typeof usersCurrencyReq!=='undefined'&&Array.isArray(usersCurrencyReq)){if(usdReq[signature]==='success'&&usersCurrencyReq[signature]==='success'){if(_this.config.objName==='products'){for(var item in usersCurrencyReq[result][_this.config.objName]){if(usdReq[result].errors.length===0){usersCurrencyReq[result][_this.config.objName][item]['productoptions'][0].usDollarAmount=usdReq[result][_this.config.objName][item]['productoptions'][0].price.split('.')[0].replace(/[^0-9]+/g,'');}else{usersCurrencyReq[result][_this.config.objName][item]['productoptions'][0].usDollarAmount=0;}}}
if(_this.config.objName==='stationcashproducts'){for(var index in usersCurrencyReq[result][_this.config.objName]){if(usdReq[result].errors.length===0){usersCurrencyReq[result][_this.config.objName][index].usDollarAmount=usdReq[result][_this.config.objName][index].price.formattedPrice.split('.')[0].replace(/[^0-9]+/g,'');}else{usersCurrencyReq[result][_this.config.objName][index].usDollarAmount=0;}}}
_this.formatUramData(usersCurrencyReq[result][_this.config.objName]);}}else{if(usdReq){if(_this.config.objName==='products'){for(var item in usdReq[_this.config.objName]){usdReq[_this.config.objName][item]['productoptions'][0].usDollarAmount=usdReq[_this.config.objName][item]['productoptions'][0].price.split('.')[0].replace(/[^0-9]+/g,'');}}
if(_this.config.objName==='stationcashproducts'){for(var index in usdReq[_this.config.objName]){usdReq[_this.config.objName][index].usDollarAmount=usdReq[_this.config.objName][index].price.formattedPrice.split('.')[0].replace(/[^0-9]+/g,'');}}
_this.formatUramData(usdReq[_this.config.objName]);}}},function(err){console.log('ERROR',err);})}
SOE.Shop.prototype.getNumber=function(num){return num.replace(/[^\d\.]+/g,'');};SOE.Shop.prototype.setCurrency=function(){var _this=this;$('.currency.dropdown').on('click','a',function(evt){SOE.Shop.currency=evt.target.dataset.currency;_this.loadUramData();$('#currency-text, .currency.dropdown .currency-text').html(currencyMap[SOE.Shop.currency]);if(SOE.Shop.currency!=='SOE'){wpCookie('shop-currency',SOE.Shop.currency,30);}});$('#currency-text, .currency.dropdown .currency-text').html(currencyMap[SOE.Shop.currency]);};SOE.Shop.prototype.currencyFront=function(price){var renderedCurrency=(globs.soelocale==='en_US')?this.symbolMap[SOE.Shop.currency].symbol+price.replace(/^\D+/g,'').replace(/\D+$/g,''):price;return renderedCurrency;};SOE.Shop.prototype.currencyBack=function(price){var renderedCurrency=(globs.soelocale==='en_US')?price.replace(/^\D+/g,'').replace(/\D+$/g,'')+this.symbolMap[SOE.Shop.currency].symbol:price;return renderedCurrency;};SOE.Shop.prototype.sortProducts=function(){var that=this;if(this.config.sort&&typeof this.config.sort==='function'){this.products.sort(this.config.sort);}else if(this.config.sort&&typeof this.config.sort!=='object'){this.products.sort(function(a,b){return that.getNumber(a[that.config.sort])-that.getNumber(b[that.config.sort]);});}else{this.products.sort(function(a,b){return that.config.sort.sortArray.indexOf(a[that.config.sort.sortProperty])-that.config.sort.sortArray.indexOf(b[that.config.sort.sortProperty]);});}};SOE.Shop.prototype.formatUramData=function(uramProducts){var counter=0;for(var k=0;k<uramProducts.length;k++){var currProduct=uramProducts[k];if((!this.config.blacklist||!_.contains(this.config.blacklist.list,currProduct[this.config.blacklist.propertyName]))&&(!this.config.whitelist||_.contains(this.config.whitelist.list,currProduct[this.config.whitelist.propertyName]))){this.reMapProductData(counter++,currProduct);}}
this.sortProducts();this.renderProducts();this.products=[];};SOE.Shop.prototype.renderProducts=function(){var template;var container=this.config.container;if(Array.isArray(this.config.container)){for(var k=0;k<this.config.container.length;k++){if(Array.isArray(this.config.template)&&this.config.template.length==this.config.container.length){if(typeof this.config.template[k]==='function'){template=this.config.template[k]({products:this.products});}else{template=_.template($(this.config.template[k]).html(),{products:this.products});}}else{template=_.template($(this.config.template).html(),{products:this.products});}
$('.spinner').fadeOut();$(container[k]).html(template);}}else{if(Array.isArray(this.config.template)){for(var arr=0;arr<this.config.template.length;arr++){if(typeof this.config.template[arr]==='function'){template+=this.config.template[arr]({products:this.products});}else{template+=_.template($(this.config.template[arr]).html(),{products:this.products});}}}else if(typeof this.config.template==='function'){template=this.config.template({products:this.products});}else{template=_.template($(this.config.template).html(),{products:this.products});}
$('.spinner').fadeOut();$(container).html(template);}
if(this.config.callback){this.config.callback();}};

/* end /web-platform/scripts/web-platform/shop.core.js*/

/* start /scripts/v4/_pages/shop-episodes.js*/
SOE.Shop.addFeatureGlow=function(str){'use strict';return str.replace(/^(.{1,50}) - /,'<span class="glow">$1</span> - ').replace(/\*\*(.+?)\*\*/g,'<span class="glow">$1</span>');};$(document).ready(function(){'use strict';const _episodeTemplate=_.template($('#episodeTemplate').html());const products=dlcData.map(function(d){const hasLink=d.sku.indexOf('/')>=0;const description=d.description||'';const descriptionFull=description.replace(/<\/?p>/gi,'').replace(/<br \/>/gi,'<br/>').replace(/> </gi,'><');const descriptionBrief=SOE.Utils.ellipsisAtBreak(descriptionFull,hasLink?190:250);return{name:d.name.replace(/^(Episode \d+):?/i,'<em>$1</em>'),shortName:d.pageName,descriptionFull:descriptionFull,descriptionBrief:descriptionBrief,media:d.media,features:d.features,assets:d.assets,link:hasLink?d.sku:null};});const episodeMarkup=_episodeTemplate({products:products});$('#episodesContent').html(episodeMarkup).removeClass('loading');$('.load-more-button').removeClass('hidden');$(window).trigger('dcuoEpisodesLoaded');SOE.MediaModal.setAutosizeDotBar({maxWidth:0.7,dotWidth:38});dlcData.forEach(function(dlc){SOE.MediaModal.setupGroup({container:'#episodesContent',selector:'.'+dlc.pageName+' .episode-media .screenshot',typeName:'Screenshot'});});SOE.MediaModal.setupPoster({container:'#episodesContent',selector:'.episode-media .infographic',scroll:false,containY:true});$(document).on('show.bs.collapse hide.bs.collapse','#episodesContent .episode-details-collapse',function(e){$(this).closest('.episode-box').toggleClass('active',e.type==='show');});$('.load-more-button').on('click',function(){$('.episode-row.hidden').removeClass('hidden');$('.load-more-button').addClass('hidden');});});

/* end /scripts/v4/_pages/shop-episodes.js*/

/* start /web-platform/scripts/web-platform/component/global-nav.js*/
(function(){'use strict';var nonMember=_.template($('script.non-member').html());var member=_.template($('script.member').html());if(globs.wdl.userLoggedIn){$.ajax({url:'/get-rest-ticket',type:'POST',data:{type:0},context:this,success:function(sid){$.ajax({url:globs.urls.uramAjaxUrl+'/rest/commerce/11/allaccessinfo.action',dataType:'json',data:{'theme':globs.wdl.theme,'responseType':'json','sessionID':sid.successPayload.ticket},success:function(data){var memberData={scGrantDate:data.scGrantDate,scGrantClaimed:data.scGrantClaimed,expirationDate:data.expirationDate};$('.currency-balance-item').each(function(){var $this=$(this);var presenceField=$this.attr('data-currency-presence-field');var balanceField=$this.attr('data-currency-balance-field');if(!presenceField||(Object.hasOwnProperty.call(data,presenceField)&&data[presenceField]===true)){if(Object.hasOwnProperty.call(data,balanceField)){$this.removeClass('hidden').find('.currency-balance').text(SOE.Utils.addSeparators(data[balanceField]));}}});if(!data.akella){if(!data.member){$('#brandBarAllAccess').html(nonMember());}else{$('#brandBarAllAccess').html(member(memberData));$('#brandBarIsMember').text('My');$('#membershipLink').click(function(e){e.preventDefault();window.location.href=globs.urls.membershipMembership;});}
$('ul#brandBarOptions').trigger('reset');}}});}});}else{$('#brandBarAllAccess').html(nonMember());}})();

/* end /web-platform/scripts/web-platform/component/global-nav.js*/

/* start /scripts/v4/components/value-bundles-flyout.js*/
$(document).ready(function(){'use strict';function checkAndShowFlyout(){var sawFlyoutAlready=wpCookie('dcuoSawValueBundlesFlyout');var windowHeight,windowScrollTop,$triggerEpisode,triggerEpisodeScrollTop;if(!sawFlyoutAlready){windowHeight=window.innerHeight;windowScrollTop=window.pageYOffset;$triggerEpisode=$('.episode-box:eq(5)');if($triggerEpisode.length>0){triggerEpisodeScrollTop=$triggerEpisode.offset().top-windowScrollTop;if(triggerEpisodeScrollTop<windowHeight){wpCookie('dcuoSawValueBundlesFlyout',true,30);$('#valueBundlesFlyout').addClass('open');}}}}
function keepFlyoutAboveFooter(){var windowHeight=window.innerHeight;var windowScrollTop=window.pageYOffset;var $flyout=$('#valueBundlesFlyout');var $footer=$('#footer');var footerScrollTop=$footer.offset().top-windowScrollTop;$flyout.css('bottom',Math.max(0,windowHeight-footerScrollTop));}
var flyoutUpdater=new DebouncedUpdater({callbacks:[checkAndShowFlyout,keepFlyoutAboveFooter]});$(window).on('scroll resize dcuoEpisodesLoaded',flyoutUpdater.doUpdate.bind(flyoutUpdater));$('.flyout-toggle').on('click',function(e){e.preventDefault();wpCookie('dcuoSawValueBundlesFlyout',true,30);$(this).closest('.flyout').toggleClass('open');});});

/* end /scripts/v4/components/value-bundles-flyout.js*/

/* start /scripts/v4/components/scroll-top.js*/
(function($){'use strict';function _updateScrollTop(){var $scrollButton=$('.scroll-top');var scrollTop=window.pageYOffset;var windowHeight=window.innerHeight;var documentHeight=window.document.body.clientHeight;var footerHeight=$('#footer').outerHeight();var isAtBottom=(documentHeight-(scrollTop+windowHeight))<=footerHeight;if(scrollTop<(windowHeight/4)){$scrollButton.removeClass('in');}else{$scrollButton.addClass('in');$scrollButton.toggleClass('bottom',isAtBottom);$scrollButton.css('bottom',isAtBottom?footerHeight:'');}}
$('.scroll-top a').on('click',function(){$('html, body').animate({scrollTop:0},'fast');});var pageUpdater=new DebouncedUpdater({callbacks:[_updateScrollTop]});$(window).on('scroll.scrollTop resize.scrollTop',pageUpdater.doUpdate.bind(pageUpdater));$(document).on('click','#feedLoadMore',pageUpdater.doUpdate.bind(pageUpdater));})(jQuery);

/* end /scripts/v4/components/scroll-top.js*/

/* start /scripts/v4/components/newsletter-modal.js*/
$(document).ready(function(){'use strict';function emailFieldOK(){return DCUO.validateEmail($('#newsletterModalEmail').val().trim());}
function atLeastOneSystemChosen(){return $('#newsletterModalForm .system-select input:checked').length>0?true:false;}
function allTOSPPChecked(){return $('#newsletterModalForm .tos-pp input:not(:checked)').length===0;}
function updateSubmitButtonState(){$('#newsletterModalSubmit').toggleClass('disabled',!(emailFieldOK()&&atLeastOneSystemChosen()&&allTOSPPChecked()));}
function requestSuccessfulOrUndefined(req){if(req){return(req[0]&&req[0].success)?true:false;}else{return true;}}
function requestHasErrors(req){if(req){return(req[0]&&req[0].errorsList)?true:false;}else{return false;}}
function reduceErrors(list,req){if(req&&req[0]&&req[0].errorsList){return list.concat(req[0].errorsList);}else{return list;}}
$('#nwsltrSignup').on('click',function(){$('#nwsltrModal').modal();$('#nwsltrModal input[type=email]').val('');$('#nwsltrModal input[type=checkbox]').prop('checked',false);updateSubmitButtonState();});$('#newsletterModalForm input').on('keydown keypress change input',function(){updateSubmitButtonState();});$('#newsletterModalSubmit').on('click',function(e){e.preventDefault();if($(this).hasClass('disabled')){return;}
var $newsletterModal=$('#nwsltrModal');var $errorText=$('.result-error',$newsletterModal);var emailAddress=$('#newsletterModalEmail').val().trim();var saves=[];var errorsList;if(emailFieldOK()&&atLeastOneSystemChosen()&&allTOSPPChecked()){$newsletterModal.addClass('working');$('#newsletterModalForm .system-select input:checked').each(function(i,e){var cid=$(e).attr('data-cid');saves.push($.ajax({url:globs.urls.appengRestUrl+'/rest/saveEmail',type:'POST',data:{campaignId:cid,email:emailAddress},dataType:'json',timeout:10000}));});$.when.apply($,saves).done(function(a1,a2,a3){var results;$newsletterModal.removeClass('working');if(saves.length==1){results=[[a1,a2,a3],undefined,undefined];}else{results=[a1,a2,a3];}
if(_.every(results,requestSuccessfulOrUndefined)){$newsletterModal.addClass('success');}else if(_.some(results,requestHasErrors)){$newsletterModal.addClass('error');errorsList=_.uniq(_.reduce(results,reduceErrors,[]));$errorText.html('General problem: '+errorsList.join(', '));}else{$newsletterModal.addClass('error');$errorText.html('A server error occurred. Please try again later.');}}).fail(function(){$newsletterModal.removeClass('working').addClass('error');$errorText.html('A network error occurred. Please try again later.');});}});(function checkNewsletter(param){var checkboxIds={pc:'#newsletterPlatformPC',ps:'#newsletterPlatformPS',ps4:'#newsletterPlatformPS',playstation:'#newsletterPlatformPS',xbox:'#newsletterPlatformXbox',switch:'#newsletterPlatformSwitch'};var $platformCheckbox;if(param&&checkboxIds[param.toLowerCase()]){$platformCheckbox=$(checkboxIds[param.toLowerCase()]);if($platformCheckbox.length>0){$('#nwsltrModal').modal();$platformCheckbox.prop('checked',true);updateSubmitButtonState();DTKR.trackEvent({eventCategory:'modal',eventAction:'open with page',eventLabel:param.toLowerCase()});}}})(globs.urlparameters.newsletter);});

/* end /scripts/v4/components/newsletter-modal.js*/
